import time
from multiprocessing import Process


# 类的方式写 多个进程并行执行

class EatProcess(Process):

    def __init__(self, name):
        self.name = name
        # 进程类的 __init__函数内 必须要调用 super().__init__初始化
        super().__init__()

    # 重写 Process 类的 run函数，在重写的run函数中 来实现要完成的功能
    def run(self):
        for i in range(6):
            print('正在吃东西...')
            time.sleep(0.3)


class WorkProcess(Process):
    def __init__(self, name):
        self.name = name
        # 线程类的 __init__函数内 必须要调用 super().__init__初始化
        super().__init__()

    # 重写 Process 类的 run函数，在重写的run函数中 来实现要完成的功能
    def run(self):
        for i in range(6):
            print('正在学习...')
            time.sleep(0.3)


if __name__ == '__main__':
    # 创建一个子进程, 每个任务由一个独立的子进程来完成

    p1 = EatProcess('进程1')
    p2 = WorkProcess('进程2')
    p1.start()

    # p1.join()
    p2.start()

